1. Field of the Invention
The present invention relates to a file storing system for a relational data base, of which clustering is accelerated. More particularly, it relates to a file storing system, which provides capability of accessing each relation that expresses a set corresponding to a data type and capability of formation of closely connecting data in a data storing file, according to the relationship of master and slave records expressing each instance of data.
2. Description of the Related Art
In a field of engineering application, such as CAD (Computer Aided Design), when employing a data base, there is modularity between data. It is required to process the data processing for a module unit with a high speed.
Meanwhile, a relational database managing system (RDBMS) can retrieve a large amount of data, such as SQL (Structured Query Language), with wide variety of items according to the circumstances (adhoc).
However, the RDBMS is considered applicable to only a field of business application to process homogeneous data, such as employee information, but not to a field of engineering application.
A record, which is a unit of data handled by an application program, or a tuple respectively having a uniform type and a class, express what kind of a field of data items records are formed with.
The RDBMS manages a set of records with a unit, which is the so-called relation, adaptive to the type or the class. Accordingly, the RDBMS can apply a uniform search condition to the wide variety of records belonging to one relation.
It is also required when expressing a modularity, such as the relationship of master and slave records, to retrieve data by the means of one key, which identifies a module unit. In this case, the accessing operation to a module unit is too slow.
It has been proposed to access to the module unit with a high speed by providing secondary index, such as a Hash code, B (Balanced)-tree, or the like, instead of an identifying key of each record in the RDBMS (refer to U.S. Pat No. 4,961,139 and U.S. Pat. No. 5,058,002).
Here, the Hash code keeps data areas based on one key, and hangs the data down, based on the location of the key. Further, the B-tree hangs data down by the use of a tree code, which is distributed by one key. The B-tree stores data by dividing into the plural. Therefore, there is an advantage to reduce the required time half when retrieving, if the data is divided into two.
However, when records in a module unit complied with a secondary indexes are physically dispersed, and stored and located on the secondary storage device, accessing to data also becomes too slow, even if a system employs the Hash code or the B-tree, as described above.
Further, there is a method for expressing the relationship between specified records, such as module units, by the use of an address link between records. The method is, for example, a network type database management system. In this method, data are linked with a link relationship, and the data are accessed in order.
However, it is not always that record groups linked to addresses are physically located neighborhood in this case, too.
Accordingly, it is required for realizing the capability to access the module unit with a high speed to physically locate and neighbor the record groups, according to the relationship of master and slave records. To overcome the above described drawbacks, there is a method for providing a directory, which expresses physical storing and managing information of the module unit, such as a partitioned organization file (refer to U.S. Pat. No. 4, 827,462 and U.S. Pat. No. 5,058,002).
In this method, it becomes possible to locate and neighbor record groups of a module unit within a page area by linking an address of the page area for storing a plurality of the record groups, which form the module unit, from a directory.
However, in this case, all records can be accessed within only the page of which address is linked per a module, i.e., a page, to which each address of each directory is linked, and the records stored in the page. In other words, all records can be accessed via the directory. Therefore, records cannot be accessed via a relation, such as the RDBMS. Further, it is difficult to locate and neighbor the own page (or fellow pages) storing the records, as the page is expressed with a page address link on the directory. It is the utmost to locate the page close to an immediately previous page area.
Accordingly, the information of the module unit stretches over a plurality of pages. Therefore, if pages are inserted or deleted due to the frequent insertion and deletion of records, storing locations of the pages are dispersed.
FIG. 29 is an explanatory diagram of the conventional file storing methods, as described above. Even with employing every methods, there is a tendency to disperse the locations for storing data, when storing the data to a secondary data storage device 1, as explained above and shown in FIG. 30. As the result, the times required for accessing to the secondary storage device 1 are increased. That brings an increase of accessing time.
The applicant of the present invention has proposed a clustering method for storing and neighboring the records, based on the relationship between relations with consideration of the above-described prior arts (Japanese patent No. 6-110744, which is corresponding to U.S. patent Ser. No. 129,853), now U.S. Pat. No. 5,418,949.
A In the proposed method, the adjacent relation is led according to uniform type or class of data. The method is suitable for data management in data processing, such as simulation or circuit composition in a circuit design CAD, which reads data per a kind of data totally and requires a large amount of calculations.
However, it is not enough, even if the method disclosed by the applicant of the present invention is employed, when requiring to locally access per an instance of data, such as a library information of parts. It further requires detailed clustering, i.e., clustering of slave records, such as a portion or a pin, which is subordinate per a record of a main part.